K3s 配置 metrics-server
在 K3s 中,默认情况下 metrics-server 是自动部署的,并且它的配置是由 K3s 自身来管理的。如果你需要修改 metrics-server 的设置,你可能需要先禁用 K3s 的内置 metrics-server,然后手动部署你自己版本的 metrics-server。
禁用 K3s 的内置 metrics-server
你可以在安装 K3s 时通过使用 --disable metrics-server 选项来禁用内置的 metrics-server,或者你可以在已经安装的系统上禁用它。
要在已安装的系统上禁用 metrics-server,你可以编辑 K3s 服务文件:
1、打开 K3s 服务文件:
sudo nano /etc/systemd/system/k3s.service
或者对于 K3s agent:
sudo nano /etc/systemd/system/k3s-agent.service
2、在 ExecStart 行中添加 --disable metrics-server。例如:
ExecStart=/usr/local/bin/k3s server --disable metrics-server
3、保存文件并退出编辑器。
4、重新加载 systemd 配置并重启 K3s:
sudo systemctl daemon-reload
sudo systemctl restart k3s
部署你自己的 metrics-server
现在你可以部署你自己版本的 metrics-server 并根据你的需求进行配置。
1、下载 metrics-server 的部署文件:
wget https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml
2、编辑 components.yaml 文件,找到 metrics-server 的部署部分,并在 args 下添加你需要的任何参数。例如,为了禁用 TLS 证书验证,你可以添加 --kubelet-insecure-tls 参数:
- --kubelet-insecure-tls
3、应用这个配置:
kubectl apply -f components.yaml
通过这些步骤,你应该能够在 K3s 中禁用内置的 metrics-server 并部署你自己配置的版本。确保你了解通过这种方式进行修改可能会带来的安全风险,尤其是当你禁用 TLS 证书验证时。
使用镜像拉取 Image
报错
Failed to pull image "k8s.gcr.io/metrics-server/metrics-server:v0.4.1": rpc error: code = Unknown desc = Error response from daemon: Get https://k8s.gcr.io/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)
说明是网络问题,k8s.gcr.io/metrics-server/metrics-server:v0.4.1 这个源的镜像无法拉取
换成国内的镜像
registry.cn-hangzhou.aliyuncs.com/google_containers/metrics-server:v0.6.3
IP 超时
dial tcp 10.43.0.1:443: i/o timeout
把这个 IP 解析到本机
sudo ip route add 10.43.0.1 via 192.168.1.1